home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1992 June: ROMin Holiday / ADC Developer CD (1992-06) (''ROMin Holiday'')_iso / Developer Connection - 06-1992.iso / Developer Essentials / MPW Interfaces & Libraries / PInterfaces / Dialogs.p < prev    next >
Encoding:
Text File  |  1992-01-29  |  5.3 KB  |  208 lines  |  [TEXT/MPS ]

  1.  
  2. {
  3. Created: Thursday, September 12, 1991 at 2:47 PM
  4.  Dialogs.p
  5.  Pascal Interface to the Macintosh Libraries
  6.  
  7.   Copyright Apple Computer, Inc.  1985-1991
  8.   All rights reserved
  9. }
  10.  
  11.  
  12. {$IFC UNDEFINED UsingIncludes}
  13. {$SETC UsingIncludes := 0}
  14. {$ENDC}
  15.  
  16. {$IFC NOT UsingIncludes}
  17.  UNIT Dialogs;
  18.  INTERFACE
  19. {$ENDC}
  20.  
  21. {$IFC UNDEFINED UsingDialogs}
  22. {$SETC UsingDialogs := 1}
  23.  
  24. {$I+}
  25. {$SETC DialogsIncludes := UsingIncludes}
  26. {$SETC UsingIncludes := 1}
  27. {$IFC UNDEFINED UsingWindows}
  28. {$I $$Shell(PInterfaces)Windows.p}
  29. {$ENDC}
  30. {$IFC UNDEFINED UsingTextEdit}
  31. {$I $$Shell(PInterfaces)TextEdit.p}
  32. {$ENDC}
  33. {$SETC UsingIncludes := DialogsIncludes}
  34.  
  35. CONST
  36. ctrlItem = 4;
  37. btnCtrl = 0;
  38. chkCtrl = 1;
  39. radCtrl = 2;
  40. resCtrl = 3;
  41. statText = 8;
  42. editText = 16;
  43. iconItem = 32;
  44. picItem = 64;
  45. userItem = 0;
  46. itemDisable = 128;
  47. ok = 1;
  48. cancel = 2;
  49. stopIcon = 0;
  50. noteIcon = 1;
  51. cautionIcon = 2;
  52.  
  53. TYPE
  54. { Dialog Item List Manipulation Constants }
  55. DITLMethod = INTEGER;
  56.  
  57. CONST
  58. overlayDITL = 0;
  59. appendDITLRight = 1;
  60. appendDITLBottom = 2;
  61.  
  62. TYPE
  63. StageList = PACKED RECORD
  64.  boldItm4: 0..1;                {default button item number - 1}
  65.  boxDrwn4: BOOLEAN;                {true if alert box to be drawn}
  66.  sound4: 0..3;                    {sound number}
  67.  boldItm3: 0..1;
  68.  boxDrwn3: BOOLEAN;
  69.  sound3: 0..3;
  70.  boldItm2: 0..1;
  71.  boxDrwn2: BOOLEAN;
  72.  sound2: 0..3;
  73.  boldItm1: 0..1;
  74.  boxDrwn1: BOOLEAN;
  75.  sound1: 0..3;
  76.  END;
  77.  
  78.  
  79. DialogPtr = WindowPtr;
  80. ResumeProcPtr = ProcPtr;        { PROCEDURE Resume; }
  81. SoundProcPtr = ProcPtr;            { PROCEDURE DoSound; }
  82. ModalFilterProcPtr = ProcPtr;    { FUNCTION Filter(theDialog: DialogPtr; VAR theEvent: EventRecord; VAR itemHit: INTEGER): BOOLEAN; }
  83.  
  84. DialogPeek = ^DialogRecord;
  85. DialogRecord = RECORD
  86.  window: WindowRecord;
  87.  items: Handle;
  88.  textH: TEHandle;
  89.  editField: INTEGER;
  90.  editOpen: INTEGER;
  91.  aDefItem: INTEGER;
  92.  END;
  93.  
  94. DialogTPtr = ^DialogTemplate;
  95. DialogTHndl = ^DialogTPtr;
  96. DialogTemplate = RECORD
  97.  boundsRect: Rect;
  98.  procID: INTEGER;
  99.  visible: BOOLEAN;
  100.  filler1: BOOLEAN;
  101.  goAwayFlag: BOOLEAN;
  102.  filler2: BOOLEAN;
  103.  refCon: LONGINT;
  104.  itemsID: INTEGER;
  105.  title: Str255;
  106.  END;
  107.  
  108. AlertTPtr = ^AlertTemplate;
  109. AlertTHndl = ^AlertTPtr;
  110. AlertTemplate = RECORD
  111.  boundsRect: Rect;
  112.  itemsID: INTEGER;
  113.  stages: StageList;
  114.  END;
  115.  
  116.  
  117. PROCEDURE InitDialogs(resumeProc: ResumeProcPtr);
  118.  INLINE $A97B;
  119. PROCEDURE ErrorSound(soundProc: SoundProcPtr);
  120.  INLINE $A98C;
  121. FUNCTION NewDialog(wStorage: Ptr;boundsRect: Rect;title: Str255;visible: BOOLEAN;
  122.  procID: INTEGER;behind: WindowPtr;goAwayFlag: BOOLEAN;refCon: LONGINT;
  123.  itmLstHndl: Handle): DialogPtr;
  124.  INLINE $A97D;
  125. FUNCTION GetNewDialog(dialogID: INTEGER;dStorage: Ptr;behind: WindowPtr): DialogPtr;
  126.  INLINE $A97C;
  127. PROCEDURE CloseDialog(theDialog: DialogPtr);
  128.  INLINE $A982;
  129. PROCEDURE DisposDialog(theDialog: DialogPtr);
  130.  INLINE $A983;
  131. PROCEDURE DisposeDialog(theDialog: DialogPtr);
  132.  INLINE $A983;
  133. PROCEDURE CouldDialog(dialogID: INTEGER);
  134.  INLINE $A979;
  135. PROCEDURE FreeDialog(dialogID: INTEGER);
  136.  INLINE $A97A;
  137. PROCEDURE ParamText(param0: Str255;param1: Str255;param2: Str255;param3: Str255);
  138.  INLINE $A98B;
  139. PROCEDURE ModalDialog(filterProc: ModalFilterProcPtr;VAR itemHit: INTEGER);
  140.  INLINE $A991;
  141. FUNCTION IsDialogEvent(theEvent: EventRecord): BOOLEAN;
  142.  INLINE $A97F;
  143. FUNCTION DialogSelect(theEvent: EventRecord;VAR theDialog: DialogPtr;VAR itemHit: INTEGER): BOOLEAN;
  144.  INLINE $A980;
  145. PROCEDURE DrawDialog(theDialog: DialogPtr);
  146.  INLINE $A981;
  147. PROCEDURE UpdtDialog(theDialog: DialogPtr;updateRgn: RgnHandle);
  148.  INLINE $A978;
  149. PROCEDURE UpdateDialog(theDialog: DialogPtr;updateRgn: RgnHandle);
  150.  INLINE $A978;
  151. FUNCTION Alert(alertID: INTEGER;filterProc: ModalFilterProcPtr): INTEGER;
  152.  INLINE $A985;
  153. FUNCTION StopAlert(alertID: INTEGER;filterProc: ModalFilterProcPtr): INTEGER;
  154.  INLINE $A986;
  155. FUNCTION NoteAlert(alertID: INTEGER;filterProc: ModalFilterProcPtr): INTEGER;
  156.  INLINE $A987;
  157. FUNCTION CautionAlert(alertID: INTEGER;filterProc: ModalFilterProcPtr): INTEGER;
  158.  INLINE $A988;
  159. PROCEDURE CouldAlert(alertID: INTEGER);
  160.  INLINE $A989;
  161. PROCEDURE FreeAlert(alertID: INTEGER);
  162.  INLINE $A98A;
  163. PROCEDURE GetDItem(theDialog: DialogPtr;itemNo: INTEGER;VAR itemType: INTEGER;
  164.  VAR item: Handle;VAR box: Rect);
  165.  INLINE $A98D;
  166. PROCEDURE SetDItem(theDialog: DialogPtr;itemNo: INTEGER;itemType: INTEGER;
  167.  item: Handle;box: Rect);
  168.  INLINE $A98E;
  169. PROCEDURE HideDItem(theDialog: DialogPtr;itemNo: INTEGER);
  170.  INLINE $A827;
  171. PROCEDURE ShowDItem(theDialog: DialogPtr;itemNo: INTEGER);
  172.  INLINE $A828;
  173. PROCEDURE SelIText(theDialog: DialogPtr;itemNo: INTEGER;strtSel: INTEGER;
  174.  endSel: INTEGER);
  175.  INLINE $A97E;
  176. PROCEDURE GetIText(item: Handle;VAR text: Str255);
  177.  INLINE $A990;
  178. PROCEDURE SetIText(item: Handle;text: Str255);
  179.  INLINE $A98F;
  180. FUNCTION FindDItem(theDialog: DialogPtr;thePt: Point): INTEGER;
  181.  INLINE $A984;
  182. FUNCTION NewCDialog(dStorage: Ptr;boundsRect: Rect;title: Str255;visible: BOOLEAN;
  183.  procID: INTEGER;behind: WindowPtr;goAwayFlag: BOOLEAN;refCon: LONGINT;
  184.  items: Handle): DialogPtr;
  185.  INLINE $AA4B;
  186. FUNCTION GetAlrtStage: INTEGER;
  187.  INLINE $3EB8,$0A9A;
  188. PROCEDURE ResetAlrtStage;
  189.  INLINE $4278,$0A9A;
  190. PROCEDURE DlgCut(theDialog: DialogPtr);
  191. PROCEDURE DlgPaste(theDialog: DialogPtr);
  192. PROCEDURE DlgCopy(theDialog: DialogPtr);
  193. PROCEDURE DlgDelete(theDialog: DialogPtr);
  194. PROCEDURE SetDAFont(fontNum: INTEGER);
  195.  INLINE $31DF,$0AFA;
  196.  
  197. PROCEDURE AppendDITL(theDialog: DialogPtr;theHandle: Handle;method: DITLMethod);
  198. FUNCTION CountDITL(theDialog: DialogPtr): INTEGER;
  199. PROCEDURE ShortenDITL(theDialog: DialogPtr;numberItems: INTEGER);
  200.  
  201.  
  202. {$ENDC} { UsingDialogs }
  203.  
  204. {$IFC NOT UsingIncludes}
  205.  END.
  206. {$ENDC}
  207.  
  208.